Hemispherical optical projection systems and methods, i.e. systems and methods which project images at an angle of at least about 160 degrees, are used to project images onto the inner surfaces of domes. Hemispherical optical projection systems and methods have long been used in planetariums, commercial and military flight simulators and hemispherical theaters such as OMNIMAX.RTM. theaters. With the present interest in virtual reality, hemispherical optical projection systems and methods have been investigated for projecting images which simulate a real environment. Such images are typically computer-generated multimedia images including video, but they may also be generated using film or other media. Home theater has also generated much interest, and hemispherical optical projection systems and methods are also being investigated for home theater applications.
Alternate Realities Corporation, the assignee of the present invention, has embarked in a program of research and development to produce a low-cost, versatile, portable, high quality hemispherical optical projection system. In application Ser. No. 08/593,041, entitled "Multi-Pieced, Portable Projection Dome and Method of Assembling the Same" to Zobel, Jr. et al., which is assigned to the assignee of the present invention, systems and methods for constructing and building a low-cost, portable dome are described. In application Ser. 08/593,699, entitled "Tiltable Hemispherical Optical Projection Systems and Methods Having Constant Angular Separation of Projected Pixels" to Colucci et al., optical systems and methods which are optimized for hemispherical optical projection are described.
A major problem of hemispherical optical projection systems and methods is the provision of appropriate data for display on a dome without distortion. In particular, computer-generated multimedia images including video, and images which use film or other media, are generally generated for projection onto a planar surface, such as a television, computer display, or theater display. It will be understood by those having skill in the art that although some of those displays may deviate slightly from absolute planarity, the image data is assumed to be projected onto a planar display.
In the field of image processing, hardware and software has been developed for planar image graphics computer systems which convert three-dimensional image data to planar image data for display on a planar display. Manufacturers of planar image graphics computer systems include Silicon Graphics Incorporated (the Infinite Reality or Onyx lines of systems), Sun Microsystems (the SPARC Station and Ultra lines of systems), IBM (the RISC System 6000 Series and Power lines of systems), Hewlett-Packard (the Visualize, Freedom and Pro Vision lines of systems) and many others. These systems process image data for display on a two-dimensional display at speeds which are generally higher than those of general purpose computers or workstations. The above-noted manufacturers and others have now standardized their planar image graphics computer systems (hardware and software) to operate under a standard architecture, referred to as OpenGL.RTM.. OpenGL is a programming interface which produces interactive three-dimensional graphics on platforms from many manufacturers. Over four hundred commands are provided which can be used to display shapes, compose animated three-dimensional scenes, complete with lighting, anti-aliasing and texture-mapping.
Because OpenGL is an industry standard, programs and libraries written on one platform can be ported easily to another. Moreover, because most of the complex math which is necessary for producing interactive three-dimensional applications is hidden within the commands, developers are relieved of having to decipher lengthy formulas in order to render images on a planar display. The OpenGL architecture is described in publications entitled "3D Graphics Programming with OpenGL.RTM.", Clayton Wallnum, 1995, Que Corporation; "OpenGL.RTM. Reference Manual, The Official Reference Document for OpenGL.RTM. Release 1", OpenGL.RTM. Architecture Review Board, sponsoring editor David Rogelberg, 1992; and "OpenGL.RTM. Programming Guide, The Official Guide to Learning OpenGL.RTM., Release 1", OpenGL.RTM. Architecture Review Board, Jackie Knighter, Don Davis and Nason Woo, 1993, the disclosures of all of which are hereby incorporated herein by reference.
Unfortunately, image data produced by image graphics computer systems which are designed for planar displays will generally be distortion corrected upon projection on a nonplanar display. For example, as images are scaled, translated and/or rotated, they generally will become distorted in shape when they are projected on a nonplanar display such as a dome. This distortion can be a major stumbling block in the acceptance of a dome as a replacement for a planar display.
Many approaches can be taken to correct these distortions. One approach would be to design a nonplanar image graphics computer system which can produce nonplanar images at high speed. Unfortunately, such a hardware and software development effort would likely require many millions of dollars to implement, as evidenced by the massive development efforts which led to the hardware architectures currently supporting OpenGL.
Another approach would be to require all content producers to modify their data to accommodate the unique environment of a dome. Unfortunately, this requirement would also likely hinder the acceptance of a dome among content providers.
Yet another alternative would be to design and/or port a computer program, which can operate on a general purpose personal computer or workstation, to provide nonplanar image data processing. Unfortunately, such a program would also likely require large development and/or porting efforts and would likely be slower than state-of-the-art image processing systems using planar image graphics computer systems such as OpenGL systems.
Still another alternative would be to divide the nonplanar display into a large number of approximately planar segments and use a plurality of planar image display systems to produce the nonplanar display. Such a solution is often referred to as "tiling", and is often used in flight simulators and wide-angle theaters. Unfortunately, multiple projection systems may be costly and difficult to set up and align and may still include distortions because the display surfaces are not truly planar.
The above description has focused on hemispherical displays. However, there is also interest in many other forms of nonplanar displays wherein wide angle projection of an image is generated using a single image pipeline. For example, virtual reality helmets may use a nonplanar, nonhemispherical viewing area. In other applications, images may be projected onto cylindrical projection surfaces. In yet other applications, images may be projected on the inside of a cube such as a room. All of these display applications may encounter the problems described above in attempting to reduce distortion upon projection of image data on a nonplanar display.